#include "Enseignant.hpp"
#include "Personnel.hpp"

#include <iostream>

Enseignant::Enseignant(void) : Personnel() {
    std::cout << "constructeur 1 de la classe Enseignant " << std::endl;
}

Enseignant::Enseignant(const char* name, const char* adress, const double salaire, const unsigned int numBureau)
                      : Personnel(name, adress, salaire, numBureau) {
    this->salaireMensuel = salaire;
    std::cout << "constructeur 2 de la classe Enseignant ";
    std::cout << "pour la personne [" << name << "]" << std::endl;
}

Enseignant::Enseignant(const Enseignant &autreProf) : Personnel(autreProf) {
    this->salaireMensuel = autreProf.salaireMensuel;
    std::cout << "constructeur 3 de la classe Enseignant ";
    std::cout << "pour la personne [" << autreProf.nom << "]" << std::endl;
}

Enseignant::~Enseignant(void) {
    std::cout << "Destructeur de la classe Enseignant " << std::endl;
}

double Enseignant::calculerSalaire(void) const {
    return 1.4 * Personnel::salaireMensuel;
}

void Enseignant::printInfo(void) {
    std::cout << "Personnel enseignant : " << std::endl;
    Personne::printInfo();

    std::cout << "Bureau : " << Personnel::numero_bureau << std::endl;
    std::cout << "Salaire : " << Personnel::calculerSalaire() << std::endl;
}
